21 research outputs found

    A Framework to Quantify the Overestimations of Static WCET Analysis

    Get PDF
    International audienceTo reduce complexity while computing an upper bound on the worst-case execution time, static WCET analysis performs over-approximations. This feeds the general feeling that static WCET estimations can be far above the real WCET. This feeling is strengthened when these estimations are compared to measured execution times: generally, it is very unlikely to capture the worstcase from observations, then the difference between the highest watermark and the proven WCET upper bound might be considerable. In this paper, we introduce a framework to quantify the possible overestimation on WCET upper bounds obtained by static analysis. The objective is to derive a lower bound on the WCET to complement the upper bound

    Automatic WCET Analysis of Real-Time Parallel Applications

    Get PDF
    National audienceTomorrow’s real-time embedded systems will be built upon multicore architectures. This raises two challenges. First, shared resources should be arbitrated in such a way that the WCET of independent threads running concurrently can be computed: in this paper, we assume that time-predictable multicore architectures are available. The second challenge is to develop software that achieves a high level of performance without impairing timing predictability. We investigate parallel software based on the POSIX threads standard and we show how the WCET of a parallel program can be analysed. We report experimental results obtained for typical parallel programs with an extended version of the OTAWA toolset

    Impact of Code Compression on Estimated Worst-Case Execution Times

    Get PDF
    International audienceCode compression techniques might be useful to meet code size constraints in embedded systems. In the average case, the impact of code compression on the performance is double-edged: on one side, the number of accesses to memory hierarchy is reduced because several instructions are coded in a single word, and this is likely to reduce the execution time; on the other side, the decompression penalty increases the processing time of compressed instructions. Nevertheless, experimental results show that the execution time might be lowered by code compression. In this paper, our goal is to analyze the impact of code compression on the estimated Worst-Case Execution Time of critical tasks that must meet at the same time code size constraints and timing deadlines. Changes in the access patterns to the instruction cache are indeed likely to alter the accuracy of the cache analysis within the process of determining the WCET. Experimental results show that, besides reducing the code size, our code compression scheme also improves the WCET estimates in most of the cases

    A framework to experiment optimizations for real-time and embedded software

    Get PDF
    Typical constraints on embedded systems include code size limits, upper bounds on energy consumption and hard or soft deadlines. To meet these requirements, it may be necessary to improve the software by applying various kinds of transformations like compiler optimizations, specific mapping of code and data in the available memories, code compression, etc. However, a transformation that aims at improving the software with respect to a given criterion might engender side effects on other criteria and these effects must be carefully analyzed. For this purpose, we have developed a common framework that makes it possible to experiment various code transfor-mations and to evaluate their impact of various criteria. This work has been carried out within the French ANR MORE project.Comment: International Conference on Embedded Real Time Software and Systems (ERTS2), Toulouse : France (2010

    parMERASA Multi-Core Execution of Parallelised Hard Real-Time Applications Supporting Analysability

    Get PDF
    International audienceEngineers who design hard real-time embedded systems express a need for several times the performance available today while keeping safety as major criterion. A breakthrough in performance is expected by parallelizing hard real-time applications and running them on an embedded multi-core processor, which enables combining the requirements for high-performance with timing-predictable execution. parMERASA will provide a timing analyzable system of parallel hard real-time applications running on a scalable multicore processor. parMERASA goes one step beyond mixed criticality demands: It targets future complex control algorithms by parallelizing hard real-time programs to run on predictable multi-/many-core processors. We aim to achieve a breakthrough in techniques for parallelization of industrial hard real-time programs, provide hard real-time support in system software, WCET analysis and verification tools for multi-cores, and techniques for predictable multi-core designs with up to 64 cores

    Compression de code pour processeurs haute-performance

    No full text
    National audienceLes systèmes embarqués sont contraints, pour des raisons de coût et d’autonomie, en mémoire et en consommation d’énergie tout en requérant de plus en plus de performance. La compression de code permet d’optimiser la taille des codes embarqués mais aussi leur performance et leur consommation d’énergie. La quasi totalité des travaux sur le sujet proposent des schémas de compression reposant sur une décompression entre la mémoire et le coeur du processeur (pré-cache ou post-cache) afin de ne pas modifier ce dernier. Mais ces méthodes sont soit très pénalisantes en temps d’exécution, soit très dures à mettre en oeuvre pour des processeurs superscalaires. Dans cet article, nous proposonsun schéma de compression intra-pipeline adapté aux processeurs embarqués haute-performance, nous montrons qu’il permet d’optimiser les trois critères simultanément et ce pour différentes caractéristiques architecturales

    Minimizing the Cost of Synchronisations in the WCET of Real-Time Parallel Programs

    No full text
    Designing time-predictable architectures to support the requirements of hard real-time systems is the goal of several research projects. In this paper we assume that such platforms exist and we focus on the timing analysis of parallel real-time applications. One of the main challenges is to determine how much the delays induced by software constructs such as synchronisations can impact the worst-case execution times (WCETs) of parallel threads. In this paper, we refine state-of-the-art analysis: first, we derive more accurate estimations of stalls at critical sections; second, we introduce new locking primitives that minimise stall times on the worst-case path. Experimental results show noticeable improvements on the WCETs of benchmarks

    Compression de code et optimisation multicritère des systèmes embarqués dans un contexte temps réel strict

    No full text
    Pour des raisons économiques, énergétiques et/ou ergonomiques, les systèmes embarqués sont soumis à de nombreuses contraintes comme être performants en moyenne ou dans le pire cas, avoir une consommation d'énergie et une mémoire de taille aussi réduite que possible. En conséquence, les systèmes embarqués ont plusieurs critères à optimiser lors de leur conception. Ce travail de thèse s'intéresse à la mise au point de stratégies d'optimisation de code multicritère pour des applications embarquées potentiellement temps réel strict. Dans un premier temps, un schéma de compression de code a été développé et mis en place pour optimiser principalement la taille de code. Ce schéma utilise une décompression dans le pipeline du processeur pour pouvoir optimiser aussi la consommation d énergie et la performance moyenne ou pire cas. L'analyse des effets du schéma proposé a montré qu il peut simultanément optimiser, ou offrir de bons compromis entre, plusieurs critères. Dans un deuxième temps, une plateforme d optimisation multicritère a été mise en œuvre pour appliquer simultanément plusieurs transformations de code ciblant différents critères. Cette plateforme utilise une approche itérative pour trouver les points de compromis entre les critères d intérêt. Finalement, afin de mettre au point des stratégies d'optimisation multicritère, nous avons proposé d'utiliser une méthode de comparaison statistique de l'efficacité des algorithmes de recherche à trouver rapidement de bonnes optimisations. Nous avons appliqué cette méthode à différents algorithmes de recherche dans plusieurs cas d'optimisation.PARIS-BIUSJ-Mathématiques rech (751052111) / SudocSudocFranceF
    corecore